"use strict";
//封装sql语句的执行
// export function dosql(sqlStr: string, params: Array<any>, connection: any) {
//   //返回promise对象执行的结果，可以解决回调地狱
//   return new Promise(function (resolve, reject) {
//     //为了解决sql注入攻击问题，query方法支持把字符串作为参数
//     connection.query(
//       sqlStr,
//       params,
//       function (err: Error, results: any, fields: any) {
//         if (err) {
//           reject(err); //如果错误调用reject
//         } else {
//           resolve(results); //如果执行成功返回resolve
//         }
//       }
//     );
//   })
//     .then((result: any) => ({ success: true, data: result }))
//     .catch((err: Error) => ({ success: false, data: err }));
// }
var __importDefault = (this && this.__importDefault) || function (mod) {
    return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.dosql = void 0;
// 利用数据库连接池进行二次封装
const sqlPool_1 = __importDefault(require("../mysql/sqlPool"));
function dosql(sqlStr, params) {
    //返回promise对象执行的结果，可以解决回调地狱
    return new Promise(function (resolve, reject) {
        sqlPool_1.default.getConnection(function (err, conn) {
            conn.query(sqlStr, params, function (err, results, fields) {
                if (err) {
                    reject(err); //如果错误调用reject
                }
                else {
                    resolve(results); //如果执行成功返回resolve
                }
                conn.release();
            });
        });
        //为了解决sql注入攻击问题，query方法支持把字符串作为参数
    })
        .then((result) => ({ success: true, data: result }))
        .catch((err) => ({ success: false, data: err }));
}
exports.dosql = dosql;
